Cloud service providers make software and hardware tools available for individuals and organizations who require access to such tools. Generally, any combination of software and hardware, including virtualized hardware, provided by a cloud service can be referred to as a cloud environment. A user may wish to modify some aspects of a cloud environment over time. The user may also wish to have the ability to revert to an earlier version of the cloud environment at a later time, or may wish to migrate the cloud environment to a different cloud provider. However, version control and migration between cloud providers can require extensive knowledge of the particular deployment protocols, application programming interfaces (APIs), and other programmatic details, which unsophisticated users may not understand.